/*******************************************************************************
 * @file        hdl_dem.c
 * @version     v1.0.0
 * @copyright   COPYRIGHT &copy; 2023 CSG
 * @author      陈工
 * @date        2023-5-24
 * @brief
 * @attention
 * Modification History
 * DATE         DESCRIPTION
 * ------------------------
 * - 2023-5-24  陈工 Created
 *******************************************************************************/
#include "hdl_dem.h"
/*******************************************************************************
 * @FunctionName: prvhdl_iwdg_init
 * @Author:       陈工
 * @DateTime:     2023年5月24日T13:55:23+0800
 * @Purpose:      计算  喂狗时间：时间计算(大概):Tout=((4*2^prer)*rlr)/32 (ms).
 * @param:        prer：分频因子=4*2^prer.但最大值只能是256!
 * @param:        usrlr：自动重装载值,0~0XFFF.
 * @return:
 *******************************************************************************/
static void prvhdl_iwdg_init(uint8_t prer, uint16_t usrlr)
{
    IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);

    IWDG_SetPrescaler(prer);

    IWDG_SetReload(usrlr);

    IWDG_ReloadCounter();

    IWDG_Enable();
}

/*******************************************************************************
 * @FunctionName: vhdl_dem_init
 * @Author:       陈工
 * @DateTime:     2023年5月24日T13:57:09+0800
 * @Purpose:
 * @param:        void
 *******************************************************************************/
void vhdl_dem_init(void)
{
    // 定时1s
    prvhdl_iwdg_init(4, 500);
}

/*******************************************************************************
 * @FunctionName: vhdl_dem_handle
 * @Author:       陈工
 * @DateTime:     2023年5月24日T13:57:03+0800
 * @Purpose:
 * @param:        void
 *******************************************************************************/
void vhdl_dem_handle(void)
{
    IWDG_ReloadCounter();
}
